//
//  JJTabBar.m
//  testP
//
//  Created by 陈家将 on 16/7/14.
//  Copyright © 2016年 chenjiajiang. All rights reserved.
//
#import "JJTabBar.h"

@interface JJTabBar ()

@end

@implementation JJTabBar


- (void)layoutSubviews {
//    for (UIView *tabBarButton in self.subviews) {
    for (UIView *tabBarButton in self.items) { // 解决办法
        if ([tabBarButton isKindOfClass:NSClassFromString(@"UITabBarButton")]) {
            NSLog(@"%@",tabBarButton);
        }
    }
     NSLog(@"---------------------------------------------");
    [super layoutSubviews];
    
//    Class class = NSClassFromString(@"UITabBarButton");
//    NSInteger index = 0;
//    for(UIView* btn in self.subviews){
//        if ([btn isKindOfClass:class]) {
//            if (index == 2) {
//                index += 1;
//            }
//            CGRect frame = btn.frame;
//            frame.size.width = self.frame.size.width / 5;
//            frame.origin.x = self.frame.size.width / 5 * index;
//            btn.frame = frame;
//            index++;
//        }
//    }
    
        /*=======  把重新布局的代码放在super方法之前,就不会出现此问题,但这样就没办法实现中间自定义按钮. ======*/
        //请查看 JJOneViewController文件
    /* =======================
     1. 如果这里的title与tabBarController初始化添加子控制器时的不一样,就会出现次问题;一样则不会出现;这里的修改既修改了底部tabBar的item标题,也修改了顶部导航栏的标题.
     2. 拓展,修改图片也一样
     
     ========================*/
    
    
    //及 JJTwoViewController 文件内的说明
    /* =======================
     1. 如果这里的title与tabBarController初始化添加子控制器时的不一样,就会出现次问题;一样则不会出现;这里的修改既修改了底部tabBar的item标题,也修改了顶部导航栏的标题.
     2. 拓展,修改图片也一样
     
     3.此处在程序运行时该控制器的barItem位置正确,但是点击一次后就跑到最后去了
     ========================*/
        CGFloat btnX = 0;
        CGFloat btnY = 0;
    
        CGFloat btnW = self.frame.size.width / 5;
        CGFloat btnH = self.frame.size.height;
        NSInteger index = 0;
        // 遍历子控件
    //    for (UIView *tabBarButton in self.subviews) {
    for (UIView *tabBarButton in self.items) { // 解决办法
            if ([tabBarButton isKindOfClass:NSClassFromString(@"UITabBarButton")]) {
                NSLog(@"%@",tabBarButton);
                if (index == 2) {
                    index += 1;
                }
    
                btnX = index * btnW;
                
                tabBarButton.frame = CGRectMake(btnX, btnY, btnW, btnH);
    
                index++;
            }
        }
    NSLog(@"----------------------------------------------");
    //    for (UIView *tabBarButton in self.subviews) {
    for (UIView *tabBarButton in self.items) { // 解决办法
        if ([tabBarButton isKindOfClass:NSClassFromString(@"UITabBarButton")]) {
            NSLog(@"%@",tabBarButton);
        }
    }
    NSLog(@"==============================================");
}
@end
